package procsim;

class PaintAuxiliary extends PaintTab{
    public PaintAuxiliary(Paint parent) {
        super(parent);
        //Coordinates
        Design.INTE.addCoords(this, 35, 37, 70, 37);
        Design.INTD.addCoords(this, 35, 50, 70, 50);
        Design.TRPE.addCoords(this, 35, 63, 74, 63);
        Design.TRPD.addCoords(this, 35, 76, 70, 76);
        Design.HALT.addCoords(this, 35, 89, 70, 89);
        Design.CTRL.addCoords(this, Design.AuxOR1.getResCoords(30));
        Design.ADD.addCoords(this, Design.AuxOR2.getUpper2Coords(30));
        Design.AND.addCoords(this, Design.AuxOR2.getLower2Coords(30));
        Design.ODO.addCoords(this, Design.AuxOR2.getResCoords(30));
        Design.INC.addCoords(this, Design.AuxOR3.getUpper3Coords(30));
        Design.DEC.addCoords(this, Design.AuxOR3.getMiddle3Coords(30));
        Design.ASR.addCoords(this, Design.AuxOR3.getLower3Coords(30));
        Design.OJO.addCoords(this, Design.AuxOR3.getResCoords(30));
        Design.OJO.addCoords(this, 35, 237, 70, 237);
        Design.PUSH.addCoords(this, 35, 250, 70, 250);
        Design.JMPIND.addCoords(this, 35, 263, 74, 263);
        Design.MOVS.addCoords(this, 35, 276, 70, 276);
        Design.ODO.addCoords(this, 35, 289, 70, 289);
        Design.NAD.addCoords(this, Design.AuxOR4.getResCoords(73));
        Design.NAD.addCoords(this, 170, 262, 170, 65);
        Design.NAD.addCoords(this, 170, 262, 170, 305);
        Design.POP.addCoords(this, Design.AuxOR5.getUpper2Coords(30));
        Design.MOVD.addCoords(this, Design.AuxOR5.getLower2Coords(30));
        Design.NAD2.addCoords(this, Design.AuxOR5.getResCoords(30));
        Design.NAD.addCoords(this, Design.AuxAND1.getUpper2Coords(60).horizontalFlip());
        Design.OJO.addCoords(this, Design.AuxAND1.getLower2Coords(30));
        Design.OJO2.addCoords(this, Design.AuxAND1.getResCoords(30));
        Design.NAD.addCoords(this, Design.AuxAND2.getUpper2Coords(60));
        Design.ODO.addCoords(this, Design.AuxAND2.getLower2Coords(30));
        Design.ODO2.addCoords(this, Design.AuxAND2.getResCoords(30));
        Design.NAD.addCoords(this, Design.AuxAND3.getUpper2Coords(60));
        Design.MOVS.addCoords(this, Design.AuxAND3.getLower2Coords(30));
        Design.MOVS2.addCoords(this, Design.AuxAND3.getResCoords(30));
        Design.NAD.addCoords(this, Design.AuxAND4.getUpper2Coords(60));
        Design.PUSH.addCoords(this, Design.AuxAND4.getLower2Coords(30));
        Design.PUSH2.addCoords(this, Design.AuxAND4.getResCoords(30));
        Design.NAD.addCoords(this, Design.AuxAND5.getUpper2Coords(60));
        Design.JMPIND.addCoords(this, Design.AuxAND5.getLower2Coords(40));
        Design.JMPIND2.addCoords(this, Design.AuxAND5.getResCoords(30));
        Design.grADR.addCoords(this, Design.AuxOR6.getUpper2Coords(40));
        Design.grOPR.addCoords(this, Design.AuxOR6.getLower2Coords(40));
        Design.grADROPR.addCoords(this, Design.AuxOR6.getResCoords(50));

        //Collections
        elements.add(Design.AuxAND1);
        elements.add(Design.AuxAND2);
        elements.add(Design.AuxAND3);
        elements.add(Design.AuxAND4);
        elements.add(Design.AuxAND5);
        elements.add(Design.AuxOR1);
        elements.add(Design.AuxOR2);
        elements.add(Design.AuxOR3);
        elements.add(Design.AuxOR4);
        elements.add(Design.AuxOR5);
        elements.add(Design.AuxOR6);

        lines.add(Design.INTE);
        lines.add(Design.INTD);
        lines.add(Design.TRPE);
        lines.add(Design.TRPD);
        lines.add(Design.HALT);
        lines.add(Design.ASR);
        lines.add(Design.INC);
        lines.add(Design.DEC);
        lines.add(Design.ADD);
        lines.add(Design.AND);
        lines.add(Design.JMPIND);
        lines.add(Design.MOVS);
        lines.add(Design.MOVD);
        lines.add(Design.POP);
        lines.add(Design.PUSH);
        lines.add(Design.CTRL);
        lines.add(Design.OJO);
        lines.add(Design.ODO);
        lines.add(Design.NAD);
        lines.add(Design.NAD2);
        lines.add(Design.OJO2);
        lines.add(Design.ODO2);
        lines.add(Design.MOVS2);
        lines.add(Design.PUSH2);
        lines.add(Design.JMPIND2);
        lines.add(Design.grADR);
        lines.add(Design.grOPR);
        lines.add(Design.grADROPR);
    }
}
